/* 包名 */
package main

/* 引入工具包 */
import "fmt"

/**
编译:go build .\main\HelloWorld.go,会输出一个exe文件,直接运行exe文件即可
运行:go run .\main\HelloWorld.go(直接运行返回结果)

格式化:
    go fmt .\main\HelloWorld.go
    gofmt .\main\HelloWorld.go 
    gofmt -w .\main\HelloWorld.go(格式化后,会替换原来的文件)

内容:
    1.go语言中,main包是可执行程序的入口
    2.main函数是可执行程序的入口(helloWorld)
    3.Println是打印输出函数,可以打印字符串和数字
    4.变量的测试

数据的类型有:基本数据类型(整形:int,int8,int32,int64;uint,uint8,uint32,uint64,浮点型:float32,float64),派生复杂类型(指针,数组,结构体,管道,函数,切片,接口,map)

看到第77页
*/
func main() {
	/* 执行换行 */
	fmt.Println("==测试一下11==")
	/* 执行不换行 */
	fmt.Print("==测试一下22==")
	fmt.Println("==测试一下33==")

    sum,sub := getVal(10,2)
    fmt.Println("sum:",sum,";sub:",sub)

    sum2,_ :=getVal(10,2)
    fmt.Println("sum2:",sum2)

    /* 定义一个变量,带默认值 */
    var i int = 20;
    fmt.Println("i:",i)
    
    /* 可分开赋值 */
    var j int ;
    j = 30;
    fmt.Println("j:",j)

    /* 定义一个变量,不带类型 */
    var k = 30.2;
    fmt.Println("k:",k)

    /* 一次声明多个变量 */
    a,b,c := 10,20,"ts10";
    fmt.Println("a:",a,";b:",b,";c:",c)

}

/**
定论一个函数
*/
func getVal(num1 int,num2 int)(int,int){
    sum := num1 + num2
    sub := num1 - num2
    return sum,sub;
}